package pers.weiney.pojo;

import com.fasterxml.jackson.annotation.JsonFormat;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.groups.Default;
import lombok.Data;

import java.time.LocalDateTime;

@Data
public class Category {
    @NotNull(groups = Update.class)
    private Integer id;//主键ID
    @NotEmpty
    private String categoryName;//分类名称
    @NotEmpty
    private String categoryAlias;//分类别名
    private Integer createUser;//创建人ID
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;//创建时间
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateTime;//更新时间

    /*校验项指定分组
        1. 给不同的校验项设置接口方法
        2. 属性上的validation标签设置属性groups=xx.class
        3. 没有指定分组的默认为Default分组
        4. 共有的校验项，可为接口继承Default，以简化代码
        5. 某个校验项独有的，设置属性分组
     */

    public interface Add extends Default {

    }

    public interface Update extends Default {

    }
}
